package com.transaction.demo.base.dao;

import org.apache.ibatis.annotations.Mapper;

import java.util.List;

import com.transaction.demo.base.entity.SysMenuBean;
import com.transaction.demo.base.entity.SysRoleBean;
import com.transaction.demo.base.entity.SysUserBean;

/**
 * 描述：用户信息表
 * 作者：马庆智
 * 日期：2023/03/28 17:07:15
 */
@Mapper
public interface SysUserDao {

	/**
	 * 查询用户信息表
	 *
	 * @param sysUserBean 请求参数
	 * @return SysUser
	 * @author 马庆智
	 * @date: 2023/03/28 17:07:15
	 */
	SysUserBean querySysUser(SysUserBean sysUserBean);

	/**
	 * 查询用户信息表列表
	 *
	 * @param sysUserBean 请求参数
	 * @return List<SysUser>
	 * @author 马庆智
	 * @date: 2023/03/28 17:07:15
	 */
	List<SysUserBean> querySysUserList(SysUserBean sysUserBean);

	/**
	 * 添加用户信息表
	 *
	 * @param sysUserBean 请求参数
	 * @return int
	 * @author 马庆智
	 * @date: 2023/03/28 17:07:15
	 */
	int saveSysUser(SysUserBean sysUserBean);

	/**
	 * 删除用户信息表
	 *
	 * @param ids 请求参数
	 * @return int
	 * @author 马庆智
	 * @date: 2023/03/28 17:07:15
	 */
	int deleteSysUser(List<Integer> ids);

	/**
	 * 更新用户信息表
	 *
	 * @param sysUserBean 请求参数
	 * @return int
	 * @author 马庆智
	 * @date: 2023/03/28 17:07:15
	 */
	int updateSysUser(SysUserBean sysUserBean);

	/**
	 * 查询用户菜单
	 *
	 * @param userId 用户id
	 * @return List<SysMenu>
	 * @author 马庆智
	 * @date: 2023/3/29 18:10
	 */
	List<SysMenuBean> queryUserMenus(Integer userId);

	/**
	 * 查询用户角色
	 *
	 * @param userId 用户id
	 * @return List<SysMenu>
	 * @author 马庆智
	 * @date: 2023/3/29 18:10
	 */
	List<SysRoleBean> queryUserRoles(Integer userId);

}